import axios from 'axios'
import { ElLoading } from 'element-plus'
const screenInstance = axios.create({
    baseURL: process.env.VUE_APP_BASE_URL + '/api',
    timeout: 10 * 1000,
})
let loading = null
// 请求拦截器
screenInstance.interceptors.request.use(config => {
    // 在发送请求之前做些什么
    // console.log(config)

    loading = ElLoading.service({
        lock: true,
        text: 'Loading',
        background: 'rgba(0, 0, 0, 0.7)',
    })

    return config
}, error => {
    if (loading) {
        loading.close()
    }

    // 对请求错误做些什么
    console.log(error)
    return Promise.reject(error)
})

// 响应拦截器
screenInstance.interceptors.response.use(response => {
    // 2xx 范围内的状态码都会触发该函数。
    // 对响应数据做点什么
    if (loading) {
        loading.close()
    }

    // console.log(response)

    return response
}, error => {
    // 超出 2xx 范围的状态码都会触发该函数。
    // 对响应错误做点什么

    if (loading) {
        loading.close()
    }

    console.log(error)

    return Promise.reject(error)
})
export default screenInstance